package com.shop.user.atom.atomsvc;

import com.shop.common.entity.user.UserPay;
import com.shop.common.model.InputBean;
import com.shop.common.model.ServiceBean;
import com.shop.common.model.param.user.UserPayLogInput;
import com.shop.common.model.result.user.UserPayLogOutput;
import com.shop.common.model.result.user.UserPayOutput;

import java.util.List;

public interface IUserPayAtomSvc {

    /**
     * @Author zhoulk
     * @Description //插入账户信息
     * @Date 14:29 2019/3/1
     *
     * @Param [payParamModel]
     * @return com.shop.common.model.ResultModel<java.lang.String>
     * @errorCode //TODO
     **/
    ServiceBean<Integer> insertUserPay(InputBean<UserPay> payInputBean);

    /**
     * @Author zhoulk
     * @Description //查询账户信息
     * @Date 14:30 2019/3/1
     *
     * @Param [payParamModel]
     * @return com.shop.common.model.ResultModel<com.shop.common.entity.user.UserPay>
     * @errorCode //TODO
     **/
    ServiceBean<UserPayOutput> selectUserPay(Integer userId);

    /**
     * @Author zhoulk
     * @Description //修改账户信息
     * @Date 14:31 2019/3/1
     *
     * @Param [payParamModel]
     * @return com.shop.common.model.ResultModel<java.lang.String>
     * @errorCode //TODO
     **/
    ServiceBean<String> updateUserPay(UserPay payParamModel);

    /**
     * @Author zhoulk
     * @Description //T删除账户信息
     * @Date 14:31 2019/3/1
     *
     * @Param [paramModel]
     * @return com.shop.common.model.ResultModel<java.lang.String>
     * @errorCode //TODO
     **/
    ServiceBean<String> deleteUserPay(InputBean<UserPay> inputBean);

    ServiceBean<Integer> addUserPayLog(UserPayLogInput input);

    ServiceBean<List<UserPayLogOutput>> qryUserPayLogs(UserPayLogInput input);

    ServiceBean<List<UserPayLogOutput>> qryUserPayLog4P(UserPayLogInput input);

    ServiceBean<Integer> delUserPayLogById(Integer id);
}
